1. Field of the Invention
The present invention relates to selectively presenting multi-dimensional information in a two-dimensional form using a Graphical User Interface. In particular, it relates to synthesizing and displaying information required in purchase planning, production planning or inventory planning of multiple products in one or more factories, warehouses, or retail stores.
2. Description of the Related Art
Consider a typical company that designs, manufactures, stocks (that is, keeps in its inventory), sells, and manages a wide range of products. Such a company may easily handle several thousand distinct products. For instance, a shoe company may make and sell many varieties of shoes such as jogging shoes, basketball shoes, casual shoes, dress shoes and so on, and in each variety, there may be many different forms and shapes, different colors and different sizes. Similarly, an apparel company may make and sell many varieties of apparel such as trousers, skirts, dresses, shirts, and jeans; and in each variety, there may be different shapes, fabrics, colors and sizes. Indeed, in all of the above-mentioned instances and in many others, there is a significant need to track and manage various kinds and forms of product information, including selling price, cost price, demand forecast, the number of items of the product in stock, etc.
Since the product information in all examples given above as well as in related examples tends to be voluminous, it can be usually handled more efficiently and effectively if this information is structured. Indeed, a company may effectively manage the information by classifying the products into various xe2x80x98stylesxe2x80x99, with all the products of the same style sharing important characteristics (typically, basic shape). For each style, this company may then use certain other characteristics for further classification. For instance, a shoe-company may classify its sports shoes into three styles, say, ProJoggers, ProTennis and ProGolf (corresponding to Joggers, Tennis shoes and Golf shoes). Furthermore, this company may want to characterize the ProJoggers style by color, size and width.
To facilitate the management of information related to various products, the notion of a stock-keeping unit (SKU) was introduced several decades ago. An SKU can be considered as a numeric or alphanumeric representation of a particular product. One can therefore use a representation of SKU based on the characteristics of the product. For instance, the ProJoggers shoe style may have come in a variant of color red, size 6, and width medium. An alphanumeric SKU representation of the style might then be xe2x80x98ProJoggers/red/6/mediumxe2x80x99.
Indeed, the number of SKUs related to a product in a typical store, warehouse, or a manufacturing company, may be very high. For instance, in the example of the shoe company given above, if the ProJoggers style of shoes comes in ten sizes, four colors and three widths, then the number of SKUs that are required to represent all possible combinations equals 10*4*3=120. And, then if the company makes, say, 50 different styles, the number of SKUs goes to 6000. Thus, there is an important need to efficiently handle the information that corresponds to the numerous SKUs.
With the advent of computers and information-technology, the handling of such a large number of SKUs has become feasible. A concise representation of products as SKUs automatically lends itself to being structured and managed in various kinds of computer databases. Hence, it is not surprising that many, if not most, product manufacturers, transporters, suppliers and sellers today manage their product information in appropriate computer databases using SKUs.
Consider the example of a footwear company that produces and sells thousands of distinct products. Various employees engaged in the running of the company need to have complete product information such as the number of units in stock for each kind of product, sale price per unit for each kind of product, phase-out date for each product, and other such product information. They may also need to convey product-related information to others, e.g. purchase orders to suppliers, without ambiguity as to which products are being referred to. The use of SKUs and automation to various degrees using computers makes these operations less tedious and time-consuming.
The operation of planning for producing and managing products typically includes preparing forecasts, maintaining and inspecting inventories, monitoring shipments, preparing purchase orders and other related operations. There are many software products in these areas that are available in prior-art; these software products manage information required for such planning operations for a large number of SKUs and for a large number of locationsxe2x80x94be they retail stores, warehouses or factories.
Some software solutions have also been used by on-line retail stores. An on-line retail store enables a customer to browse and order various product s using the World Wide Web, Local Area Network or a Wide Area Network. Often such a store may have millions of different kinds of products. In some cases, it may even provide a xe2x80x9cone-stop shopxe2x80x9d to its customers. Examples of such stores are Amazon.com of Seattle, Wash., USA and eBay Inc. of San Jose, Calif., USA; each of these stores handles product information for a million or more products. Hence, such on-line stores need to handle, for a very large number of products, complete product information including the cost price, selling price, demand forecasts, units in stock, planned receipts, historical sales, ordering agreements with manufacturers, suppliers and transporters, and a lot of related information.
The product information that needs to be created and maintained by many on-line stores is so large and so dynamic in nature that it can only be efficiently handled by computer systems today. Indeed, there are software products today that facilitate the creation and maintenance of such on-line stores. Two such software products are Catalog Architect(trademark), manufactured by IBM, of Armonk, N.Y., USA, and MBuilder(trademark), manufactured by The Internet Factory Inc., of Pleasanton, Calif., USA. These software products provide a simple and detailed method for creating a large number of SKUs in on-line retail stores. Obviously, the underlying idea that has been used in these software products is that of assigning an individual SKU to each product in the retail store. These products are distinguished and classified at the SKU level on the basis of characteristics such as size, color, width and other such characteristics. These products or SKUs can be grouped together on the basis of these characteristics in a collection of SKUs called a SKU set. The salient feature of these software products is their ability to create SKUs that correspond to all valid combinations of various characteristics of the SKU set. For example, a shirt may be described as being available in sizes small, medium and large and in colors red, blue and green. Thus the characteristic color of the product xe2x80x98shirtxe2x80x99 has three values and the characteristic size of the product xe2x80x98shirtxe2x80x99 also has three values. Application of these software tools would lead to creation of a total of nine (=3xc3x973) unique SKUs, in the SKU set corresponding to shirts.
The software products mentioned above allow creation of all valid SKU combinations by simply inputting the characteristics for each SKU set and the permissible set of values for each characteristic. Consider once again the case of the shoe company. Suppose that a particular SKU set, for example xe2x80x98Men""sxe2x80x99 Sports Shoesxe2x80x99 is available in three styles (e.g. ProJoggers, ProTennis and ProGolf), with each style available in five sizes and three colors. Thus the characteristic size has five values and characteristic color has three values. Hence, the number of SKUs that exist in this SKU set of sports shoes is forty-five (=3xc3x975xc3x973). This structuring of the SKUs in form of SKU sets makes the handling of the product information easier. This, in turn, helps in efficient management of the voluminous product information during various planning operations. Note that the SKU set, which is created at the xe2x80x98Men""sxe2x80x99 xe2x80x98Sports Shoesxe2x80x99 level in this example, could have been created at a higher level of aggregation (say, division; e.g., xe2x80x98All Men""sxe2x80x99 xe2x80x98Shoesxe2x80x99) or at a lower level (say, style; e.g., ProJoggers.)
Consider a typical planning operation in a company: that of forecasting demand for each kind of a product that the company makes. Clearly, if the company does not have the luxury of building product against firm orders (and perhaps even if it does although then for different reasons) it will attempt to forecast the customer demand for each of these products. Thus, it will determine when and in what amounts to build up stocks of each product in anticipation of demand. The quantity of products to be stocked in an inventory is usually determined on the basis of economic considerations. There are various costs associated with maintaining any quantity of any given product. For example, on one hand, there is a cost incurred in ending up having product quantities that exceed the actual demand. Such quantities may have to be sold at reduced prices resulting in a loss to the company. On the other hand, there is also an opportunity cost incurred in being unable to completely satisfy customer demand. This cost is related to the lost profits as a result of the product being unavailable and a loss of xe2x80x9cgoodwill of customersxe2x80x9d due to the non-fulfillment of their orders. Thus, the quantity of products to be stocked should be determined as precisely and as cost-effectively possible so that profit and xe2x80x9cgoodwillxe2x80x9d are maximized. And in order to determine the optimal inventory plans, the customer demand has to be first estimated.
The customer demand is usually estimated using forecasting techniques known in prior art. For instance, a time series forecasting technique is sometimes used to estimate the demand forecast for various sales periods. However, the forecast of an individual product (at an individual SKU level) is more error-prone than a forecast made at an aggregate level, i.e., for a large number of SKUs. These errors arise due to large variability and unforeseeable fluctuations in the demand forecasts for the products. Hence, the demand forecasts are generally made at an aggregate level, such as an SKU set level, rather than at a lower level, such as an individual SKU level. In the time-series forecasting method, the sales data of previous sales periods are collected and aggregated at an SKU set level to obtain time-series forecasts at an aggregate level. However, it is clear that for various purposes, various individuals will need the forecast for each product, i.e., the forecast at a disaggregated SKU level. Thus, the forecast that is available at an aggregate level, such as an SKU set level, needs to be suitably disaggregated to the lower levels. One method of disaggregating forecasts is described in Nahmias S., Production and Operations Analysis, McGraw Hill publications, 2000. This method uses the concept of xe2x80x98product demand ratiosxe2x80x99. The product demand ratio is defined as the ratio of sales of a particular product (SKU) to the total sales of all products in the corresponding product category (SKU set). This ratio is usually estimated from the historical proportion of sales for various products or SKUs in an SKU set. Thus, the total sales"" forecast that has been made at an aggregate level, such as an SKU set level, may be disaggregated to the individual SKU levels by using the product demand ratios.
It should be also pointed out that the forecasting at an SKU level as well as an SKU set level has to be done for different sales periods; these forecasts for multiple sales periods are used by various individuals for the purpose of planning. The amount of data that has to be presented is voluminous and thus has to be presented to the individual in a comprehensible manner. Various software products are available in prior art that present forecasts for multiple sales periods in a structured and disaggregated manner, thereby making it comprehensible.
One such software that allows selective two-dimensional views of forecast information is ForecastPRO(trademark). This software also provides quantitative models for time-series forecasting of the demand. Consider one such typical application of this software in a shoes production unit. For the sake of simplicity, let us suppose that this factory makes shoes in just one style, which comes in different sizes and colors. Let the SKUs in this unit be characterized using size and color. Suppose that the production manager of this unit needs to order raw material (for example, soles) required for all shoes of size xe2x80x98fivexe2x80x99. This requires the forecast of the total demand for shoes of size xe2x80x98fivexe2x80x99. ForecastPRO(trademark) is able to aggregate the SKU demand forecasts along the size characteristic to get the demand forecast for size xe2x80x98fivexe2x80x99 shoes. Further, the production manager can use ForecastPRO(trademark) to obtain the demand forecast for xe2x80x98redxe2x80x99 shoes of size xe2x80x98fivexe2x80x99. However, there is no provision in ForecastPRO(trademark) to say, obtain the total demand for all xe2x80x98redxe2x80x99 shoes. This is because ForecastPRO(trademark) has a pre-defined sequence of characteristics in which the SKU demand forecasts may be aggregated. In the above example, the pre-defined hierarchical sequence of characteristics is size followed by color. This pre-defined sequence severely limits the ability of the production manager to aggregate the demand forecasts in ways that would, if available, be very useful to the manager.
An elegant way of managing the demand forecasts for various sales periods of each SKU is by using an n-dimensional table. One dimension of this table has the different sales periods and another dimension has the top level of aggregation, such as an SKU set, for example, style. The remaining (nxe2x88x922) dimensions of the table correspond to the (nxe2x88x922) characteristics of the product. The forecast data for each SKU level for all the sales periods can thus be input in this n-dimensional table. The two-dimensional view of the demand forecasts is obtained by a selectively presenting the n-dimensional demand forecast data into a two-dimensional form. These forecasts that are presented in a two-dimensional table can then be aggregated along different characteristics by the user. The following granted US patent provides a method and system to display n-dimensional information in two dimensions by using multiple two dimensional tables.
U.S. Pat. No. 5,713,020, which is titled xe2x80x9cMethod and System for generating database queries containing multiple levels of aggregationxe2x80x9d, discloses a method and a system for displaying the contents of a multiple-level aggregation query. A multiple-level aggregation query is-a set of instructions that return data corresponding to two or more dimensions. This patent discloses a system that represents the n-dimensional data in the form of a table set. The table set contains a table for each dimension of the data. The tables are organized in a hierarchy and a selection means (that allows the selection of a field in the table) is provided in each table. The selection in an upper-level table governs the display in lower level tables. The topmost table corresponds to the most important dimension and hence displays the data aggregated along all dimensions except the most important one. The patent discloses a method whereby a selection can be made in a table and the display of subsequent tables is updated. The data displayed in a table is obtained by disaggregating data in a field selected in the upper table, along a different dimension. Thus, in each table, the data is aggregated according to all the dimensions represented in subsequent tables. Thus, this patent provides a method to navigate through the n-dimensional data, by accessing one-dimension at a time. However, the system requires multiple tables for the information to be displayed. Further, the method disclosed is inadequate in the respect that the order in which the dimensions may be aggregated is pre-defined and invariable.
In order to circumvent the drawbacks described above, what is needed is a system and a method that presents the forecast information in a manner amenable to selective aggregation of product demand forecasts. Planners would appreciate the ability to aggregate demand forecasts along one or more desired sequence of dimensions. For example, this selective aggregation would allow a production manager to estimate the required quantities of different raw materials, say, black leather (for all black shoes) as well as the required number of size 5 soles (for all size 5 shoes). This aggregate information would thus enable bulk orders to be placed, and thereby lead to lower costs in the ordering process.
The need for aggregation of data has been illustrated using the example of a manufacturer. However, it can be clearly seen that this discussion can be extended to cover the cases of transporters, suppliers, retail stores, wholesale merchants and other such cases.
It is an aim of the invention to provide a data navigation system that enables a user to selectively view multi-dimensional demand forecast data in two-dimensional form by distinguishing the products using one or more dimensions (also referred to as xe2x80x98characteristicsxe2x80x99) wherein the demand forecast data may be available at a product category level in a industry and each dimension has a finite number of dimension values used in characterizing the product.
To attain the above-mentioned aim, the data navigation system includes a representation system for representing the demand forecast data, a Graphical User Interface for displaying the data to the user in two dimensions, an interaction system to enable the user to select the data to be viewed in the graphical user interface, an identification system to identify the view of the data requested by the user, and a processing system to extract and process the identified view of the data from the representation system.
The representation system includes a two-dimensional array for storing the aggregate demand forecast data for each product category (SKU set) for all sales periods and a set of arrays wherein each array in the set stores the proportion of demand for each dimension value in a dimension and each such array corresponds to the demand forecast data for one product category.
The Graphical User Interface includes a plurality of rows and columns respectively corresponding to the number of product categories and number of sales periods, a row-updating updating system for inserting and deleting rows and filling the demand forecast data in inserted rows, and a plurality of navigation symbols to enable the user to specify one or more products from a product category for which the demand forecast data is sought.
In an alternative embodiment, each array in the set of arrays stores the proportion of demand for each dimension value in a dimension and each such array corresponds to the demand forecast data for one product category for a particular sales period.
In another alternative embodiment, the data navigation system enables a user to selectively view any multi-dimensional data in two-dimensional form.
In another alternative embodiment, the Graphical User Interface has a cell-editing system that enables a user to edit or update the multi-dimensional data using the Graphical User Interface itself.
In another alternative embodiment, the invention provides a method to represent multi-dimensional data in two-dimensional form.